package swu.bc.pictureengine.repository

import swu.bc.pictureengine.ui.state.MainViewState
import swu.bc.pictureengine.utils.DataState
import swu.bc.pictureengine.utils.StateEvent
import kotlinx.coroutines.flow.Flow

interface MainRepository {

    fun getListPictures(isRefresh: Boolean, isNextPage: Boolean, page: Int, orderBy: String, stateEvent: StateEvent): Flow<DataState<MainViewState>>

    fun getListPicturesByQuery(query: String, page: Int, stateEvent: StateEvent): Flow<DataState<MainViewState>>

    fun getPictureById(id: String, stateEvent: StateEvent): Flow<DataState<MainViewState>>
}